// WinFormOptions.h : main header file for the Application
//
#pragma once

// CWinFormOptions:
// See WinFormOptions.cpp for the implementation of this class
//
#include "ControlHandle.h"
#include "ControlClass.h"
#include "ParentWindowTitle.h"
#include "ParentWindowClass.h"
#include "ApplicationPath.h"
#include "XMLFoundation.h"
#include "GString.h"

class CWinFormOptions : public XMLObject
{
public:
	CWinFormOptions();
	~CWinFormOptions();

private:
	CControlHandle m_controlHandle;
	CControlClass m_controlClass;
	CParentWindowTitle m_parentWindowTitle;
	CParentWindowClass m_parentWindowClass;
    CApplicationPath m_applicationPath;
public:
	const CControlHandle &GetControlHandle() const;
	void SetControlHandle(const CControlHandle &nControlHandle );
    const CControlClass &GetControlClass() const;
	void SetControlClass( const CControlClass &nControlClass );
	const CParentWindowTitle &GetParentWindowTitle() const;
	void SetParentWindowTitle( const CParentWindowTitle &nParentWindowTitle );
    const CParentWindowClass &GetParentWindowClass() const;
	void SetParentWindowClass( const CParentWindowClass &nParentWindowClass );
	const CApplicationPath &GetApplicationPath() const;
	void SetApplicationPath( const CApplicationPath &nApplicationPath );
public:
	virtual void MapXMLTagsToMembers();
	DECLARE_FACTORY(CWinFormOptions , WinFormOptions )
};